﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using ProyectoAlmacen.Persistencia;
using ProyectoAlmacen.Models;
using ProyectoAlmacen.Persistencia.NH;

namespace ProyectoAlmacen.Negocio
{
    public class MaterialServiceImpl : IMaterialService
    {
        #region Dependencias

        IMaterialDAO materialDAO = new MaterialDAO();

        #endregion

        #region Operaciones del Negocio

        public Material CrearMaterial(int idMaterial, string Descripcion, int Estado, int idUsuario) 
        {
            Material materialACrear = new Material();
            materialACrear.idMaterial = idMaterial;
            materialACrear.Descripcion = Descripcion;
            materialACrear.Estado = Estado;
            materialACrear.idUsuario = idUsuario;

            return materialDAO.Crear(materialACrear);
        
        }

        public Material EditarMaterial(int idMaterial, string Descripcion, int Estado, int idUsuario)
        {
            Material materialAEditar = new Material();
            materialAEditar.idMaterial = idMaterial;
            materialAEditar.Descripcion = Descripcion;
            materialAEditar.Estado = Estado;
            materialAEditar.idUsuario = idUsuario;
            return materialDAO.Modificar(materialAEditar);

        }

        #endregion

        #region Métodos de soporte para entidad material
        public Material ObtenerMaterial(int codigo)
        {

            return materialDAO.Obtener(codigo);

        }

        public ICollection<Material> ListarMaterial()
        {

            
            return materialDAO.ListarTodos();

        }
        #endregion
    }
}